/*
    字节序：字节在内存中存储的顺序
    大端字节序：字节的高位存储在内存的低地址位
    小段字节序：字节的高位存储在内存的高地址位
*/

#include<stdio.h>

int main(){

    union
    {
        short value;                 //占两个字节
        char bytes[sizeof(short)];   //char[2]
    } test;

    test.value = 0X0102;             //对value进行赋值，两个字节，分别为16进制下的01，02
    if((test.bytes[0] == 1) && (test.bytes[1] == 2)){
        printf("大端字节序\n");
    } else if((test.bytes[0] == 2) && (test.bytes[1] == 1)){
        printf("小端字节序\n");
    } else{
        printf("未知");
    }
    
    return 0;
}